<!DOCTYPE html>
<html lang="en" xmlns:th="http://www.thymeleaf.org">
    <link rel="stylesheet" type="text/css" href="/css/pagination.css">
    <div th:replace="~{include-head :: head}"></div>
<body>

<!--引入nav-->
<div th:replace="~{include-nav :: nav}"></div>
<div class="container-fluid">
    <div class="row">
        <!--引入sidebar-->
        <div th:replace="~{include-sidebar :: sidebar}"></div>
        <div class="col-sm-9 col-sm-offset-3 col-md-10 col-md-offset-2 main">
            <div class="panel panel-default">
                <div class="panel-heading">
                    <h3 class="panel-title"><i class="glyphicon glyphicon-th"></i> 数据列表</h3>
                </div>
                <div class="panel-body">
                    <form th:action="@{/admin/query/for/search}" class="form-inline" role="form" style="float: left;" method="post">
                        <div class="form-group has-feedback">
                            <div class="input-group">
                                <div class="input-group-addon">查询条件</div>
                                <input
                                        th:value="${param.keyword}" name="keyword"
                                        class="form-control has-success" type="text" placeholder="请输入查询条件">
                            </div>
                        </div>
                        <button type="submit" class="btn btn-warning"><i class="glyphicon glyphicon-search"></i> 查询</button>
                    </form>
                    <button type="button" id="batchRemoveBtn" class="btn btn-danger" style="float:right;margin-left:10px;"><i class=" glyphicon glyphicon-remove"></i> 删除</button>
                    <a th:href="@{/admin/to/add/page.html}" class="btn btn-primary" style="float: right;">
                        <i class="glyphicon glyphicon-plus"></i> 新增
                    </a>
                     <br>
                    <hr style="clear:both;">
                    <div class="table-responsive">
                        <table class="table  table-bordered">
                            <thead>
                            <tr >
                                <th width="30">#</th>
                                <th width="30"><input id="summaryBox" type="checkbox"></th>
                                <th>账号</th>
                                <th>名称</th>
                                <th>邮箱地址</th>
                                <th width="100">操作</th>
                            </tr>
                            </thead>
                            <tbody>
                            <tr th:each="admin,myStatus : ${#request.getAttribute('PAGE-INFO').list}">
                                <td th:text="${myStatus.count}"></td>
                                <td><input type="checkbox" th:adminId="${admin.id}"class="itemBox" ></td>
                                <td th:text="${admin.loginacct}"></td>
                                <td th:text="${admin.username}"></td>
                                <td th:text="${admin.email}"></td>
                                <td>
                                    <a th:href="@{/assign/to/assign/role/page(adminId=${admin.id },pageNum=${#request.getAttribute('PAGE-INFO').pageNum})}" class="btn btn-success btn-xs">
                                        <i class=" glyphicon glyphicon-check"></i>
                                    </a>
                                    <a th:href="@{/admin/to/edit/page(adminId=${admin.id},pageNum=${#request.getAttribute('PAGE-INFO').pageNum})}" class="btn btn-primary btn-xs">
                                        <i class=" glyphicon glyphicon-pencil"></i>
                                    </a>
                                    <button type="button" th:adminId="${admin.id}" class="btn btn-danger btn-xs uniqueRemoveBtn"><i class=" glyphicon glyphicon-remove"></i></button>
                                </td>
                            </tr>
                            </tbody>
                            <tfoot>
                            <tr >
                                <td colspan="6" align="center">
                                    <div id="Pagination" class="pagination"><!-- 这里显示分页 --></div>
                                </td>
                            </tr>
                            </tfoot>
                        </table>
                    </div>
                </div>
            </div>
        </div>
    </div>
</div>
<script type="text/javascript" src="/script/jquery.pagination.js"></script>
<script type="text/javascript">
    $(function () {

        // 对分页导航条显示进行初始化
        initPagination();
        //批量删除
        $("#batchRemoveBtn").click(function () {
            // 创建数组对象：存储adminId
            var adminIdArray = new Array();
            $(".itemBox:checked").each(function () {
                var adminId = $(this).attr("adminId");
                adminIdArray.push(adminId);
            });
            // 创建数组对象：存储loginAcct
            var loginAcctArray = new Array();
            $(".itemBox:checked").each(function () {
                var loginAcct = $(this).parent("td").next().text();
                loginAcctArray.push(loginAcct);
            });
            if (adminIdArray.length == 0) {
                alert("请勾选您要删除的记录！");
                return;
            }
            deleteAdmin(loginAcctArray,adminIdArray);
        });
        // 封装复用
        function deleteAdmin(loginAcctArray,adminIdArray){
            var confirmResult = confirm("您真的要删除" + loginAcctArray + "信息吗？操作不可逆，请谨慎决定！");
            if (confirmResult == false) {
                return;
            }
            var requestBody = JSON.stringify(adminIdArray);
            $.ajax({
                url: "/admin/batch/remove",
                type: "post",
                data: requestBody,
                dataType: "json",
                contentType: "application/json;charset=UTF-8",
                success: function (response) {
                    var result = response.result;
                    if (result == "SUCCESS") {
                        // 跳转页面
                        var pageNum = [[${#request.getAttribute('PAGE-INFO').pageNum}]];
                        var keyword = $('[name="keyword"]').val();
                        window.location.href = "/admin/query/for/search?pageNum=" + pageNum + "&keyword=" + keyword;
                    } else {
                        alert(response.message);
                        return;
                    }
                }
            });
        }
        //单条删除
        $(".uniqueRemoveBtn").click(function () {
            // 创建数组对象：存储adminId
            var adminIdArray = new Array();
            // 创建数组对象：存储loginAcct
            var loginAcctArray = new Array();
            // 获取当前adminId值
            var adminId = $(this).attr("adminId");
            adminIdArray.push(adminId);
            var loginAcct = $(this).parents("tr").children("td:eq(2)").text();
            loginAcctArray.push(loginAcct);
            deleteAdmin(loginAcctArray,adminIdArray);
        });

        // 声明函数封装导航条初始化操作
        function initPagination() {
            // 声明变量存储总记录数
            var totalRecord = [[${#request.getAttribute('PAGE-INFO').total}]];
            // 声明变量存储分页导航条显示时的属性设置
            var paginationProperties = {
                num_edge_entries: 3,        //边缘页数
                num_display_entries: 5,      //主体页数
                callback: pageselectCallback, //回调函数
                items_per_page: [[${#request.getAttribute('PAGE-INFO').pageSize}]],    //每页显示数据数量，就是pageSize
                current_page: [[${#request.getAttribute('PAGE-INFO').pageNum-1}]],//当前页页码
                prev_text: "上一页",       //上一页文本
                next_text: "下一页"        //下一页文本
            };
            // 显示分页导航条
            $("#Pagination").pagination(totalRecord, paginationProperties);
        }

        // 在每一次点击“上一页”、“下一页”、“页码”时执行这个函数跳转页面
        function pageselectCallback(pageIndex, jq) {
            // pageIndex从0开始，pageNum从1开始
            var pageNum = pageIndex + 1;
            var keyword = $('[name="keyword"]').val();
            // 跳转页面
            window.location.href = "/admin/query/for/search?pageNum=" + pageNum + "&keyword=" + keyword;
            return false;
        }

        //全选删除
        $("#summaryBox").click(function () {
            // 获取当前#summaryBox的勾选状态
            // this代表当前多选框对象（DOM对象）
            // checked属性为true时表示被勾选，为false时表示没有被勾选
            // 使用checkStatus设置.itemBox的状态
            $(".itemBox").prop("checked", this.checked);
        });
    });
</script>
</body>
</html>
